From 7a144a669c61eb244cf6f2dacee8ec21e48997e8 Mon Sep 17 00:00:00 2001 From: tsteven4 <13596209+tsteven4@users.noreply.github.com> Date: Fri, 31 Mar 2023 10:56:57 -0600 Subject: [PATCH] At Qt6 build to Fedora CI (#1058) * add Qt6 build to fedora 37 fedora finally provides Qt6 QWebEngine. * and library for Qt6 find_package. this prevents a cmake generation warning about xkb. --- .github/workflows/fedora.yml | 19 ++++++++++++++++--- tools/Dockerfile_f37 | 4 ++-- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/.github/workflows/fedora.yml b/.github/workflows/fedora.yml index 555e042ed..1e696484e 100644 --- a/.github/workflows/fedora.yml +++ b/.github/workflows/fedora.yml @@ -14,11 +14,20 @@ jobs: fail-fast: false matrix: # version 32, though obsolete, uses Qt 5.14 so we keep it for that. - version: ['32', '35', '37'] + include: + - IMAGE: '32' + CMAKE_PREFIX_PATH: '/usr/lib64/cmake/Qt5' + - IMAGE: '35' + CMAKE_PREFIX_PATH: '/usr/lib64/cmake/Qt5' + - IMAGE: '37' + CMAKE_PREFIX_PATH: '/usr/lib64/cmake/Qt5' + - IMAGE: '37' + CMAKE_PREFIX_PATH: '/usr/lib64/cmake/Qt6' container: - image: gpsbabel-docker.jfrog.io/tsteven4/gpsbabel_build_environment_f${{ matrix.version }} + image: gpsbabel-docker.jfrog.io/tsteven4/gpsbabel_build_environment_f${{ matrix.IMAGE }} env: - LC_ALL: C.UTF-8 + LC_ALL: 'C.UTF-8' + JOB_CMAKE_PREFIX_PATH: ${{ matrix.CMAKE_PREFIX_PATH }} steps: - name: Checkout repository @@ -28,4 +37,8 @@ jobs: run: | # when using containers manually whitelist the checkout directory to allow git commands to work git config --global --add safe.directory "${GITHUB_WORKSPACE}" + if [ -n "${JOB_CMAKE_PREFIX_PATH}" ]; then + CMAKE_PREFIX_PATH="${JOB_CMAKE_PREFIX_PATH}" + export CMAKE_PREFIX_PATH + fi ./tools/build_and_test_cmake.sh diff --git a/tools/Dockerfile_f37 b/tools/Dockerfile_f37 index dc90f8ccf..426f2e5a2 100644 --- a/tools/Dockerfile_f37 +++ b/tools/Dockerfile_f37 @@ -15,8 +15,8 @@ RUN dnf install --assumeyes libusb1-devel zlib-devel shapelib-devel && \ # Qt used by gpsbabel, gpsbabelfe RUN dnf install --assumeyes qt5-qtbase-devel qt5-qtserialport-devel qt5-qtwebengine-devel qt5-linguist qt5-qttranslations && \ dnf clean all +RUN dnf install --assumeyes qt6-qtbase-devel qt6-qtserialport-devel qt6-qtwebengine-devel qt6-linguist qt6-qttranslations qt6-qt5compat-devel qt6-qttools-devel libxkbcommon-devel && \ + dnf clean all # tools to build the docs RUN dnf install --assumeyes expat desktop-file-utils libxslt docbook-style-xsl fop docbook5-style-xsl docbook5-schemas && \ dnf clean all -# create a link as fedora uses the name qmake-qt5 for Qt5's qmake. -RUN alternatives --install /usr/bin/qmake qt /usr/lib64/qt5/bin/qmake 100 -- 2.30.2